package com.dragon.modules.yuegou.query.merchant;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dragon.modules.yuegou.entity.merchant.MerchantEntity;
import com.dragon.modules.yuegou.enums.merchant.MerchantMerchantType;
import com.dragon.modules.yuegou.enums.merchant.MerchantStatus;
import com.dragon.modules.yuegou.enums.merchant.MerchantType;
import com.dragon.modules.yuegou.mybatis.Condition;
import com.dragon.modules.yuegou.mybatis.Query;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.JsonUnwrapped;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalTime;

/**
 * 商户信息 动态查询条件
 * 
 * @author pbuilder generated
 * @date 2020-08-26 11:10:10
 * @version 2.0
 */
@JsonInclude(Include.NON_NULL)
public class MerchantQuery extends MerchantEntity implements Query<MerchantEntity> {

    /** ID查询条件 */
	@JsonUnwrapped(prefix = "id")
	private Condition<String> idCondition;

    /** 原1.4商铺id，迁移的数据必填，新增不必填查询条件 */
	@JsonUnwrapped(prefix = "merchantIdOld")
	private Condition<String> merchantIdOldCondition;

    /** 商圈ID查询条件 */
	@JsonUnwrapped(prefix = "busdId")
	private Condition<String> busdIdCondition;

    /** 商户名称查询条件 */
	@JsonUnwrapped(prefix = "merchantName")
	private Condition<String> merchantNameCondition;

    /** 商户铺位号查询条件 */
	@JsonUnwrapped(prefix = "merchantCode")
	private Condition<String> merchantCodeCondition;

    /** 商户logo查询条件 */
	@JsonUnwrapped(prefix = "merchantLogo")
	private Condition<String> merchantLogoCondition;

    /** 楼层图片查询条件 */
	@JsonUnwrapped(prefix = "merchantFloorImg")
	private Condition<String> merchantFloorImgCondition;

    /** 查询条件 */
	@JsonUnwrapped(prefix = "images")
	private Condition<String> imagesCondition;

    /** 楼栋id查询条件 */
	@JsonUnwrapped(prefix = "buildingId")
	private Condition<String> buildingIdCondition;

    /** 楼层ID查询条件 */
	@JsonUnwrapped(prefix = "floorId")
	private Condition<String> floorIdCondition;

    /** 查询条件 */
	@JsonUnwrapped(prefix = "floorName")
	private Condition<String> floorNameCondition;

    /** [枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件 */
	@JsonUnwrapped(prefix = "merchantType")
	private Condition<MerchantMerchantType> merchantTypeCondition;

    /** 一级业态查询条件 */
	@JsonUnwrapped(prefix = "btypeId")
	private Condition<String> btypeIdCondition;

    /** 二级业态查询条件 */
	@JsonUnwrapped(prefix = "btypeSecondId")
	private Condition<String> btypeSecondIdCondition;

    /** 排序查询条件 */
	@JsonUnwrapped(prefix = "merchantSort")
	private Condition<Integer> merchantSortCondition;

    /** 联系人名称查询条件 */
	@JsonUnwrapped(prefix = "contactName")
	private Condition<String> contactNameCondition;

    /** 联系人手机号查询条件 */
	@JsonUnwrapped(prefix = "contactMobile")
	private Condition<String> contactMobileCondition;

    /** 联系地址查询条件 */
	@JsonUnwrapped(prefix = "contactAddress")
	private Condition<String> contactAddressCondition;

    /** 开始营业时间查询条件 */
	@JsonUnwrapped(prefix = "startBusinessTime")
	private Condition<LocalTime> startBusinessTimeCondition;

    /** 结束营业时间查询条件 */
	@JsonUnwrapped(prefix = "endBusinessTime")
	private Condition<LocalTime> endBusinessTimeCondition;

    /** 级次（对应字典表）查询条件 */
	@JsonUnwrapped(prefix = "level")
	private Condition<String> levelCondition;

    /** 合作关系（对应字典表）查询条件 */
	@JsonUnwrapped(prefix = "partnership")
	private Condition<String> partnershipCondition;

    /** 商铺面积查询条件 */
	@JsonUnwrapped(prefix = "merchantAcreage")
	private Condition<BigDecimal> merchantAcreageCondition;

    /** 备注查询条件 */
	@JsonUnwrapped(prefix = "remarks")
	private Condition<String> remarksCondition;

    /** 自定义服务费率查询条件 */
	@JsonUnwrapped(prefix = "selfFeeRatio")
	private Condition<BigDecimal> selfFeeRatioCondition;

    /** 费率设置描述查询条件 */
	@JsonUnwrapped(prefix = "description")
	private Condition<String> descriptionCondition;

    /** 停车场ID查询条件 */
	@JsonUnwrapped(prefix = "parkId")
	private Condition<String> parkIdCondition;

    /** 统计停车免费数量查询条件 */
	@JsonUnwrapped(prefix = "statisticsFreeNum")
	private Condition<Integer> statisticsFreeNumCondition;

    /** 是否统计停车，1表示统计,0表示不统计查询条件 */
	@JsonUnwrapped(prefix = "statistics")
	private Condition<Boolean> statisticsCondition;

    /** 创建人ID查询条件 */
	@JsonUnwrapped(prefix = "createdBy")
	private Condition<String> createdByCondition;

    /** 创建时间查询条件 */
	@JsonUnwrapped(prefix = "createdTime")
	private Condition<LocalDateTime> createdTimeCondition;

    /** 更新人ID查询条件 */
	@JsonUnwrapped(prefix = "modifiedBy")
	private Condition<String> modifiedByCondition;

    /** 更新时间查询条件 */
	@JsonUnwrapped(prefix = "modifiedTime")
	private Condition<LocalDateTime> modifiedTimeCondition;

    /** [枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件 */
	@JsonUnwrapped(prefix = "type")
	private Condition<MerchantType> typeCondition;

    /** [枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件 */
	@JsonUnwrapped(prefix = "status")
	private Condition<MerchantStatus> statusCondition;

    /** 逻辑删除，1表示已删除,0表示未删除查询条件 */
	@JsonUnwrapped(prefix = "del")
	private Condition<Boolean> delCondition;

    /** 删除人ID查询条件 */
	@JsonUnwrapped(prefix = "delBy")
	private Condition<String> delByCondition;

    /** 删除时间查询条件 */
	@JsonUnwrapped(prefix = "delTime")
	private Condition<LocalDateTime> delTimeCondition;

	/**
	 * 构造一个查询条件对象
	 */
	public MerchantQuery() {
		super();
	}

	/**
	 * 依据实体对象构造一个查询条件对象
	 * 
	 * @param entity 实体对象
	 */
	public MerchantQuery(MerchantEntity entity) {
		super(entity);
	}

	/**
	 * 依据其它查询条件对象的信息构造一个查询条件对象
	 * 
	 * @param other 查询条件对象
	 */
	public MerchantQuery(MerchantQuery other) {
		super(other);
		if (other.idCondition != null) {
			this.idCondition = other.idCondition.copy();
		}
		if (other.merchantIdOldCondition != null) {
			this.merchantIdOldCondition = other.merchantIdOldCondition.copy();
		}
		if (other.busdIdCondition != null) {
			this.busdIdCondition = other.busdIdCondition.copy();
		}
		if (other.merchantNameCondition != null) {
			this.merchantNameCondition = other.merchantNameCondition.copy();
		}
		if (other.merchantCodeCondition != null) {
			this.merchantCodeCondition = other.merchantCodeCondition.copy();
		}
		if (other.merchantLogoCondition != null) {
			this.merchantLogoCondition = other.merchantLogoCondition.copy();
		}
		if (other.merchantFloorImgCondition != null) {
			this.merchantFloorImgCondition = other.merchantFloorImgCondition.copy();
		}
		if (other.imagesCondition != null) {
			this.imagesCondition = other.imagesCondition.copy();
		}
		if (other.buildingIdCondition != null) {
			this.buildingIdCondition = other.buildingIdCondition.copy();
		}
		if (other.floorIdCondition != null) {
			this.floorIdCondition = other.floorIdCondition.copy();
		}
		if (other.floorNameCondition != null) {
			this.floorNameCondition = other.floorNameCondition.copy();
		}
		if (other.merchantTypeCondition != null) {
			this.merchantTypeCondition = other.merchantTypeCondition.copy();
		}
		if (other.btypeIdCondition != null) {
			this.btypeIdCondition = other.btypeIdCondition.copy();
		}
		if (other.btypeSecondIdCondition != null) {
			this.btypeSecondIdCondition = other.btypeSecondIdCondition.copy();
		}
		this.setOther(other);
	}
	private void setOther(MerchantQuery other) {
		if (other.merchantSortCondition != null) {
			this.merchantSortCondition = other.merchantSortCondition.copy();
		}
		if (other.contactNameCondition != null) {
			this.contactNameCondition = other.contactNameCondition.copy();
		}
		if (other.contactMobileCondition != null) {
			this.contactMobileCondition = other.contactMobileCondition.copy();
		}
		if (other.contactAddressCondition != null) {
			this.contactAddressCondition = other.contactAddressCondition.copy();
		}
		if (other.startBusinessTimeCondition != null) {
			this.startBusinessTimeCondition = other.startBusinessTimeCondition.copy();
		}
		if (other.endBusinessTimeCondition != null) {
			this.endBusinessTimeCondition = other.endBusinessTimeCondition.copy();
		}
		if (other.levelCondition != null) {
			this.levelCondition = other.levelCondition.copy();
		}
		if (other.partnershipCondition != null) {
			this.partnershipCondition = other.partnershipCondition.copy();
		}
		if (other.merchantAcreageCondition != null) {
			this.merchantAcreageCondition = other.merchantAcreageCondition.copy();
		}
		if (other.remarksCondition != null) {
			this.remarksCondition = other.remarksCondition.copy();
		}
		if (other.selfFeeRatioCondition != null) {
			this.selfFeeRatioCondition = other.selfFeeRatioCondition.copy();
		}
		if (other.descriptionCondition != null) {
			this.descriptionCondition = other.descriptionCondition.copy();
		}
		if (other.parkIdCondition != null) {
			this.parkIdCondition = other.parkIdCondition.copy();
		}
		this.setOther2(other);
	}

	private void setOther2(MerchantQuery other){
		if(other.statisticsFreeNumCondition != null) {
			this.statisticsFreeNumCondition = other.statisticsFreeNumCondition.copy();
		}
		if(other.statisticsCondition != null) {
			this.statisticsCondition = other.statisticsCondition.copy();
		}
		if(other.createdByCondition != null) {
			this.createdByCondition = other.createdByCondition.copy();
		}
		if(other.createdTimeCondition != null) {
			this.createdTimeCondition = other.createdTimeCondition.copy();
		}
		if(other.modifiedByCondition != null) {
			this.modifiedByCondition = other.modifiedByCondition.copy();
		}
		if(other.modifiedTimeCondition != null) {
			this.modifiedTimeCondition = other.modifiedTimeCondition.copy();
		}
		if(other.typeCondition != null) {
			this.typeCondition = other.typeCondition.copy();
		}
		if(other.statusCondition != null) {
			this.statusCondition = other.statusCondition.copy();
		}
		if(other.delCondition != null) {
			this.delCondition = other.delCondition.copy();
		}
		if(other.delByCondition != null) {
			this.delByCondition = other.delByCondition.copy();
		}
		if(other.delTimeCondition != null) {
			this.delTimeCondition = other.delTimeCondition.copy();
		}
	}

	@Override
	public QueryWrapper<MerchantEntity> toQueryWrapper() {
		QueryWrapper<MerchantEntity> wrapper = new QueryWrapper<>(this);
		if (idCondition != null) {
			idCondition.toWrapper(wrapper, COL_ID);
		}
		if (merchantIdOldCondition != null) {
			merchantIdOldCondition.toWrapper(wrapper, COL_MERCHANT_ID_OLD);
		}
		if (busdIdCondition != null) {
			busdIdCondition.toWrapper(wrapper, COL_BUSD_ID);
		}
		if (merchantNameCondition != null) {
			merchantNameCondition.toWrapper(wrapper, COL_MERCHANT_NAME);
		}
		if (merchantCodeCondition != null) {
			merchantCodeCondition.toWrapper(wrapper, COL_MERCHANT_CODE);
		}
		if (merchantLogoCondition != null) {
			merchantLogoCondition.toWrapper(wrapper, COL_MERCHANT_LOGO);
		}
		if (merchantFloorImgCondition != null) {
			merchantFloorImgCondition.toWrapper(wrapper, COL_MERCHANT_FLOOR_IMG);
		}
		if (imagesCondition != null) {
			imagesCondition.toWrapper(wrapper, COL_IMAGES);
		}
		if (buildingIdCondition != null) {
			buildingIdCondition.toWrapper(wrapper, COL_BUILDING_ID);
		}
		if (floorIdCondition != null) {
			floorIdCondition.toWrapper(wrapper, COL_FLOOR_ID);
		}
		if (floorNameCondition != null) {
			floorNameCondition.toWrapper(wrapper, COL_FLOOR_NAME);
		}
		if (merchantTypeCondition != null) {
			merchantTypeCondition.toWrapper(wrapper, COL_MERCHANT_TYPE);
		}
		if (btypeIdCondition != null) {
			btypeIdCondition.toWrapper(wrapper, COL_BTYPE_ID);
		}
		if (btypeSecondIdCondition != null) {
			btypeSecondIdCondition.toWrapper(wrapper, COL_BTYPE_SECOND_ID);
		}
		return getQueryWrapper(wrapper);
	}

	private QueryWrapper<MerchantEntity> getQueryWrapper(QueryWrapper<MerchantEntity> wrapper) {
		if (merchantSortCondition != null) {
			merchantSortCondition.toWrapper(wrapper, COL_MERCHANT_SORT);
		}
		if (contactNameCondition != null) {
			contactNameCondition.toWrapper(wrapper, COL_CONTACT_NAME);
		}
		if (contactMobileCondition != null) {
			contactMobileCondition.toWrapper(wrapper, COL_CONTACT_MOBILE);
		}
		if (contactAddressCondition != null) {
			contactAddressCondition.toWrapper(wrapper, COL_CONTACT_ADDRESS);
		}
		if (startBusinessTimeCondition != null) {
			startBusinessTimeCondition.toWrapper(wrapper, COL_START_BUSINESS_TIME);
		}
		if (endBusinessTimeCondition != null) {
			endBusinessTimeCondition.toWrapper(wrapper, COL_END_BUSINESS_TIME);
		}
		if (levelCondition != null) {
			levelCondition.toWrapper(wrapper, COL_LEVEL);
		}
		if (partnershipCondition != null) {
			partnershipCondition.toWrapper(wrapper, COL_PARTNERSHIP);
		}
		if (merchantAcreageCondition != null) {
			merchantAcreageCondition.toWrapper(wrapper, COL_MERCHANT_ACREAGE);
		}
		if (remarksCondition != null) {
			remarksCondition.toWrapper(wrapper, COL_REMARKS);
		}
		if (selfFeeRatioCondition != null) {
			selfFeeRatioCondition.toWrapper(wrapper, COL_SELF_FEE_RATIO);
		}
		if (descriptionCondition != null) {
			descriptionCondition.toWrapper(wrapper, COL_DESCRIPTION);
		}
		if (parkIdCondition != null) {
			parkIdCondition.toWrapper(wrapper, COL_PARK_ID);
		}
		if (statisticsFreeNumCondition != null) {
			statisticsFreeNumCondition.toWrapper(wrapper, COL_STATISTICS_FREE_NUM);
		}


		return getQueryWrapper2(wrapper);
	}

	private QueryWrapper<MerchantEntity> getQueryWrapper2(QueryWrapper<MerchantEntity> wrapper){
		if (statisticsCondition != null) {
			statisticsCondition.toWrapper(wrapper, COL_STATISTICS);
		}
		if (createdByCondition != null) {
			createdByCondition.toWrapper(wrapper, COL_CREATED_BY);
		}
		if (createdTimeCondition != null) {
			createdTimeCondition.toWrapper(wrapper, COL_CREATED_TIME);
		}
		if (modifiedByCondition != null) {
			modifiedByCondition.toWrapper(wrapper, COL_MODIFIED_BY);
		}
		if (modifiedTimeCondition != null) {
			modifiedTimeCondition.toWrapper(wrapper, COL_MODIFIED_TIME);
		}
		if (typeCondition != null) {
			typeCondition.toWrapper(wrapper, COL_TYPE);
		}
		if (statusCondition != null) {
			statusCondition.toWrapper(wrapper, COL_STATUS);
		}
		if (delCondition != null) {
			delCondition.toWrapper(wrapper, COL_DEL);
		}
		if (delByCondition != null) {
			delByCondition.toWrapper(wrapper, COL_DEL_BY);
		}
		if (delTimeCondition != null) {
			delTimeCondition.toWrapper(wrapper, COL_DEL_TIME);
		}
		return wrapper;
	}

	/**
	 * 构造并返回ID查询条件
	 * 
	 * @return idCondition ID查询条件
	 */
	public Condition<String> id() {
		this.idCondition = new Condition<>();
		return this.idCondition;
	}
	
	/**
	 * 获取ID查询条件
	 * 
	 * @return idCondition ID查询条件
	 */
	public Condition<String> getIdCondition() {
		return idCondition;
	}

	/**
	 * 设置ID查询条件
	 * 
	 * @param idCondition ID查询条件
	 */
	public void setIdCondition(Condition<String> idCondition) {
		this.idCondition = idCondition;
	}

	/**
	 * 构造并返回原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 * 
	 * @return merchantIdOldCondition 原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 */
	public Condition<String> merchantIdOld() {
		this.merchantIdOldCondition = new Condition<>();
		return this.merchantIdOldCondition;
	}
	
	/**
	 * 获取原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 * 
	 * @return merchantIdOldCondition 原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 */
	public Condition<String> getMerchantIdOldCondition() {
		return merchantIdOldCondition;
	}

	/**
	 * 设置原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 * 
	 * @param merchantIdOldCondition 原1.4商铺id，迁移的数据必填，新增不必填查询条件
	 */
	public void setMerchantIdOldCondition(Condition<String> merchantIdOldCondition) {
		this.merchantIdOldCondition = merchantIdOldCondition;
	}

	/**
	 * 构造并返回商圈ID查询条件
	 * 
	 * @return busdIdCondition 商圈ID查询条件
	 */
	public Condition<String> busdId() {
		this.busdIdCondition = new Condition<>();
		return this.busdIdCondition;
	}
	
	/**
	 * 获取商圈ID查询条件
	 * 
	 * @return busdIdCondition 商圈ID查询条件
	 */
	public Condition<String> getBusdIdCondition() {
		return busdIdCondition;
	}

	/**
	 * 设置商圈ID查询条件
	 * 
	 * @param busdIdCondition 商圈ID查询条件
	 */
	public void setBusdIdCondition(Condition<String> busdIdCondition) {
		this.busdIdCondition = busdIdCondition;
	}

	/**
	 * 构造并返回商户名称查询条件
	 * 
	 * @return merchantNameCondition 商户名称查询条件
	 */
	public Condition<String> merchantName() {
		this.merchantNameCondition = new Condition<>();
		return this.merchantNameCondition;
	}
	
	/**
	 * 获取商户名称查询条件
	 * 
	 * @return merchantNameCondition 商户名称查询条件
	 */
	public Condition<String> getMerchantNameCondition() {
		return merchantNameCondition;
	}

	/**
	 * 设置商户名称查询条件
	 * 
	 * @param merchantNameCondition 商户名称查询条件
	 */
	public void setMerchantNameCondition(Condition<String> merchantNameCondition) {
		this.merchantNameCondition = merchantNameCondition;
	}

	/**
	 * 构造并返回商户铺位号查询条件
	 * 
	 * @return merchantCodeCondition 商户铺位号查询条件
	 */
	public Condition<String> merchantCode() {
		this.merchantCodeCondition = new Condition<>();
		return this.merchantCodeCondition;
	}
	
	/**
	 * 获取商户铺位号查询条件
	 * 
	 * @return merchantCodeCondition 商户铺位号查询条件
	 */
	public Condition<String> getMerchantCodeCondition() {
		return merchantCodeCondition;
	}

	/**
	 * 设置商户铺位号查询条件
	 * 
	 * @param merchantCodeCondition 商户铺位号查询条件
	 */
	public void setMerchantCodeCondition(Condition<String> merchantCodeCondition) {
		this.merchantCodeCondition = merchantCodeCondition;
	}

	/**
	 * 构造并返回商户logo查询条件
	 * 
	 * @return merchantLogoCondition 商户logo查询条件
	 */
	public Condition<String> merchantLogo() {
		this.merchantLogoCondition = new Condition<>();
		return this.merchantLogoCondition;
	}
	
	/**
	 * 获取商户logo查询条件
	 * 
	 * @return merchantLogoCondition 商户logo查询条件
	 */
	public Condition<String> getMerchantLogoCondition() {
		return merchantLogoCondition;
	}

	/**
	 * 设置商户logo查询条件
	 * 
	 * @param merchantLogoCondition 商户logo查询条件
	 */
	public void setMerchantLogoCondition(Condition<String> merchantLogoCondition) {
		this.merchantLogoCondition = merchantLogoCondition;
	}

	/**
	 * 构造并返回楼层图片查询条件
	 * 
	 * @return merchantFloorImgCondition 楼层图片查询条件
	 */
	public Condition<String> merchantFloorImg() {
		this.merchantFloorImgCondition = new Condition<>();
		return this.merchantFloorImgCondition;
	}
	
	/**
	 * 获取楼层图片查询条件
	 * 
	 * @return merchantFloorImgCondition 楼层图片查询条件
	 */
	public Condition<String> getMerchantFloorImgCondition() {
		return merchantFloorImgCondition;
	}

	/**
	 * 设置楼层图片查询条件
	 * 
	 * @param merchantFloorImgCondition 楼层图片查询条件
	 */
	public void setMerchantFloorImgCondition(Condition<String> merchantFloorImgCondition) {
		this.merchantFloorImgCondition = merchantFloorImgCondition;
	}

	/**
	 * 构造并返回查询条件
	 * 
	 * @return imagesCondition 查询条件
	 */
	public Condition<String> images() {
		this.imagesCondition = new Condition<>();
		return this.imagesCondition;
	}
	
	/**
	 * 获取查询条件
	 * 
	 * @return imagesCondition 查询条件
	 */
	public Condition<String> getImagesCondition() {
		return imagesCondition;
	}

	/**
	 * 设置查询条件
	 * 
	 * @param imagesCondition 查询条件
	 */
	public void setImagesCondition(Condition<String> imagesCondition) {
		this.imagesCondition = imagesCondition;
	}

	/**
	 * 构造并返回楼栋id查询条件
	 * 
	 * @return buildingIdCondition 楼栋id查询条件
	 */
	public Condition<String> buildingId() {
		this.buildingIdCondition = new Condition<>();
		return this.buildingIdCondition;
	}
	
	/**
	 * 获取楼栋id查询条件
	 * 
	 * @return buildingIdCondition 楼栋id查询条件
	 */
	public Condition<String> getBuildingIdCondition() {
		return buildingIdCondition;
	}

	/**
	 * 设置楼栋id查询条件
	 * 
	 * @param buildingIdCondition 楼栋id查询条件
	 */
	public void setBuildingIdCondition(Condition<String> buildingIdCondition) {
		this.buildingIdCondition = buildingIdCondition;
	}

	/**
	 * 构造并返回楼层ID查询条件
	 * 
	 * @return floorIdCondition 楼层ID查询条件
	 */
	public Condition<String> floorId() {
		this.floorIdCondition = new Condition<>();
		return this.floorIdCondition;
	}
	
	/**
	 * 获取楼层ID查询条件
	 * 
	 * @return floorIdCondition 楼层ID查询条件
	 */
	public Condition<String> getFloorIdCondition() {
		return floorIdCondition;
	}

	/**
	 * 设置楼层ID查询条件
	 * 
	 * @param floorIdCondition 楼层ID查询条件
	 */
	public void setFloorIdCondition(Condition<String> floorIdCondition) {
		this.floorIdCondition = floorIdCondition;
	}

	/**
	 * 构造并返回查询条件
	 * 
	 * @return floorNameCondition 查询条件
	 */
	public Condition<String> floorName() {
		this.floorNameCondition = new Condition<>();
		return this.floorNameCondition;
	}
	
	/**
	 * 获取查询条件
	 * 
	 * @return floorNameCondition 查询条件
	 */
	public Condition<String> getFloorNameCondition() {
		return floorNameCondition;
	}

	/**
	 * 设置查询条件
	 * 
	 * @param floorNameCondition 查询条件
	 */
	public void setFloorNameCondition(Condition<String> floorNameCondition) {
		this.floorNameCondition = floorNameCondition;
	}

	/**
	 * 构造并返回[枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 * 
	 * @return merchantTypeCondition [枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 */
	public Condition<MerchantMerchantType> merchantType() {
		this.merchantTypeCondition = new Condition<>();
		return this.merchantTypeCondition;
	}
	
	/**
	 * 获取[枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 * 
	 * @return merchantTypeCondition [枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 */
	public Condition<MerchantMerchantType> getMerchantTypeCondition() {
		return merchantTypeCondition;
	}

	/**
	 * 设置[枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 * 
	 * @param merchantTypeCondition [枚举]商户类型：0-自营-PROPRIETARY、1-租赁-LEASE、2-联营-POOL查询条件
	 */
	public void setMerchantTypeCondition(Condition<MerchantMerchantType> merchantTypeCondition) {
		this.merchantTypeCondition = merchantTypeCondition;
	}

	/**
	 * 构造并返回一级业态查询条件
	 * 
	 * @return btypeIdCondition 一级业态查询条件
	 */
	public Condition<String> btypeId() {
		this.btypeIdCondition = new Condition<>();
		return this.btypeIdCondition;
	}
	
	/**
	 * 获取一级业态查询条件
	 * 
	 * @return btypeIdCondition 一级业态查询条件
	 */
	public Condition<String> getBtypeIdCondition() {
		return btypeIdCondition;
	}

	/**
	 * 设置一级业态查询条件
	 * 
	 * @param btypeIdCondition 一级业态查询条件
	 */
	public void setBtypeIdCondition(Condition<String> btypeIdCondition) {
		this.btypeIdCondition = btypeIdCondition;
	}

	/**
	 * 构造并返回二级业态查询条件
	 * 
	 * @return btypeSecondIdCondition 二级业态查询条件
	 */
	public Condition<String> btypeSecondId() {
		this.btypeSecondIdCondition = new Condition<>();
		return this.btypeSecondIdCondition;
	}
	
	/**
	 * 获取二级业态查询条件
	 * 
	 * @return btypeSecondIdCondition 二级业态查询条件
	 */
	public Condition<String> getBtypeSecondIdCondition() {
		return btypeSecondIdCondition;
	}

	/**
	 * 设置二级业态查询条件
	 * 
	 * @param btypeSecondIdCondition 二级业态查询条件
	 */
	public void setBtypeSecondIdCondition(Condition<String> btypeSecondIdCondition) {
		this.btypeSecondIdCondition = btypeSecondIdCondition;
	}

	/**
	 * 构造并返回排序查询条件
	 * 
	 * @return merchantSortCondition 排序查询条件
	 */
	public Condition<Integer> merchantSort() {
		this.merchantSortCondition = new Condition<>();
		return this.merchantSortCondition;
	}
	
	/**
	 * 获取排序查询条件
	 * 
	 * @return merchantSortCondition 排序查询条件
	 */
	public Condition<Integer> getMerchantSortCondition() {
		return merchantSortCondition;
	}

	/**
	 * 设置排序查询条件
	 * 
	 * @param merchantSortCondition 排序查询条件
	 */
	public void setMerchantSortCondition(Condition<Integer> merchantSortCondition) {
		this.merchantSortCondition = merchantSortCondition;
	}

	/**
	 * 构造并返回联系人名称查询条件
	 * 
	 * @return contactNameCondition 联系人名称查询条件
	 */
	public Condition<String> contactName() {
		this.contactNameCondition = new Condition<>();
		return this.contactNameCondition;
	}
	
	/**
	 * 获取联系人名称查询条件
	 * 
	 * @return contactNameCondition 联系人名称查询条件
	 */
	public Condition<String> getContactNameCondition() {
		return contactNameCondition;
	}

	/**
	 * 设置联系人名称查询条件
	 * 
	 * @param contactNameCondition 联系人名称查询条件
	 */
	public void setContactNameCondition(Condition<String> contactNameCondition) {
		this.contactNameCondition = contactNameCondition;
	}

	/**
	 * 构造并返回联系人手机号查询条件
	 * 
	 * @return contactMobileCondition 联系人手机号查询条件
	 */
	public Condition<String> contactMobile() {
		this.contactMobileCondition = new Condition<>();
		return this.contactMobileCondition;
	}
	
	/**
	 * 获取联系人手机号查询条件
	 * 
	 * @return contactMobileCondition 联系人手机号查询条件
	 */
	public Condition<String> getContactMobileCondition() {
		return contactMobileCondition;
	}

	/**
	 * 设置联系人手机号查询条件
	 * 
	 * @param contactMobileCondition 联系人手机号查询条件
	 */
	public void setContactMobileCondition(Condition<String> contactMobileCondition) {
		this.contactMobileCondition = contactMobileCondition;
	}

	/**
	 * 构造并返回联系地址查询条件
	 * 
	 * @return contactAddressCondition 联系地址查询条件
	 */
	public Condition<String> contactAddress() {
		this.contactAddressCondition = new Condition<>();
		return this.contactAddressCondition;
	}
	
	/**
	 * 获取联系地址查询条件
	 * 
	 * @return contactAddressCondition 联系地址查询条件
	 */
	public Condition<String> getContactAddressCondition() {
		return contactAddressCondition;
	}

	/**
	 * 设置联系地址查询条件
	 * 
	 * @param contactAddressCondition 联系地址查询条件
	 */
	public void setContactAddressCondition(Condition<String> contactAddressCondition) {
		this.contactAddressCondition = contactAddressCondition;
	}

	/**
	 * 构造并返回开始营业时间查询条件
	 * 
	 * @return startBusinessTimeCondition 开始营业时间查询条件
	 */
	public Condition<LocalTime> startBusinessTime() {
		this.startBusinessTimeCondition = new Condition<>();
		return this.startBusinessTimeCondition;
	}
	
	/**
	 * 获取开始营业时间查询条件
	 * 
	 * @return startBusinessTimeCondition 开始营业时间查询条件
	 */
	public Condition<LocalTime> getStartBusinessTimeCondition() {
		return startBusinessTimeCondition;
	}

	/**
	 * 设置开始营业时间查询条件
	 * 
	 * @param startBusinessTimeCondition 开始营业时间查询条件
	 */
	public void setStartBusinessTimeCondition(Condition<LocalTime> startBusinessTimeCondition) {
		this.startBusinessTimeCondition = startBusinessTimeCondition;
	}

	/**
	 * 构造并返回结束营业时间查询条件
	 * 
	 * @return endBusinessTimeCondition 结束营业时间查询条件
	 */
	public Condition<LocalTime> endBusinessTime() {
		this.endBusinessTimeCondition = new Condition<>();
		return this.endBusinessTimeCondition;
	}
	
	/**
	 * 获取结束营业时间查询条件
	 * 
	 * @return endBusinessTimeCondition 结束营业时间查询条件
	 */
	public Condition<LocalTime> getEndBusinessTimeCondition() {
		return endBusinessTimeCondition;
	}

	/**
	 * 设置结束营业时间查询条件
	 * 
	 * @param endBusinessTimeCondition 结束营业时间查询条件
	 */
	public void setEndBusinessTimeCondition(Condition<LocalTime> endBusinessTimeCondition) {
		this.endBusinessTimeCondition = endBusinessTimeCondition;
	}

	/**
	 * 构造并返回级次（对应字典表）查询条件
	 * 
	 * @return levelCondition 级次（对应字典表）查询条件
	 */
	public Condition<String> level() {
		this.levelCondition = new Condition<>();
		return this.levelCondition;
	}
	
	/**
	 * 获取级次（对应字典表）查询条件
	 * 
	 * @return levelCondition 级次（对应字典表）查询条件
	 */
	public Condition<String> getLevelCondition() {
		return levelCondition;
	}

	/**
	 * 设置级次（对应字典表）查询条件
	 * 
	 * @param levelCondition 级次（对应字典表）查询条件
	 */
	public void setLevelCondition(Condition<String> levelCondition) {
		this.levelCondition = levelCondition;
	}

	/**
	 * 构造并返回合作关系（对应字典表）查询条件
	 * 
	 * @return partnershipCondition 合作关系（对应字典表）查询条件
	 */
	public Condition<String> partnership() {
		this.partnershipCondition = new Condition<>();
		return this.partnershipCondition;
	}
	
	/**
	 * 获取合作关系（对应字典表）查询条件
	 * 
	 * @return partnershipCondition 合作关系（对应字典表）查询条件
	 */
	public Condition<String> getPartnershipCondition() {
		return partnershipCondition;
	}

	/**
	 * 设置合作关系（对应字典表）查询条件
	 * 
	 * @param partnershipCondition 合作关系（对应字典表）查询条件
	 */
	public void setPartnershipCondition(Condition<String> partnershipCondition) {
		this.partnershipCondition = partnershipCondition;
	}

	/**
	 * 构造并返回商铺面积查询条件
	 * 
	 * @return merchantAcreageCondition 商铺面积查询条件
	 */
	public Condition<BigDecimal> merchantAcreage() {
		this.merchantAcreageCondition = new Condition<>();
		return this.merchantAcreageCondition;
	}
	
	/**
	 * 获取商铺面积查询条件
	 * 
	 * @return merchantAcreageCondition 商铺面积查询条件
	 */
	public Condition<BigDecimal> getMerchantAcreageCondition() {
		return merchantAcreageCondition;
	}

	/**
	 * 设置商铺面积查询条件
	 * 
	 * @param merchantAcreageCondition 商铺面积查询条件
	 */
	public void setMerchantAcreageCondition(Condition<BigDecimal> merchantAcreageCondition) {
		this.merchantAcreageCondition = merchantAcreageCondition;
	}

	/**
	 * 构造并返回备注查询条件
	 * 
	 * @return remarksCondition 备注查询条件
	 */
	public Condition<String> remarks() {
		this.remarksCondition = new Condition<>();
		return this.remarksCondition;
	}
	
	/**
	 * 获取备注查询条件
	 * 
	 * @return remarksCondition 备注查询条件
	 */
	public Condition<String> getRemarksCondition() {
		return remarksCondition;
	}

	/**
	 * 设置备注查询条件
	 * 
	 * @param remarksCondition 备注查询条件
	 */
	public void setRemarksCondition(Condition<String> remarksCondition) {
		this.remarksCondition = remarksCondition;
	}

	/**
	 * 构造并返回自定义服务费率查询条件
	 * 
	 * @return selfFeeRatioCondition 自定义服务费率查询条件
	 */
	public Condition<BigDecimal> selfFeeRatio() {
		this.selfFeeRatioCondition = new Condition<>();
		return this.selfFeeRatioCondition;
	}
	
	/**
	 * 获取自定义服务费率查询条件
	 * 
	 * @return selfFeeRatioCondition 自定义服务费率查询条件
	 */
	public Condition<BigDecimal> getSelfFeeRatioCondition() {
		return selfFeeRatioCondition;
	}

	/**
	 * 设置自定义服务费率查询条件
	 * 
	 * @param selfFeeRatioCondition 自定义服务费率查询条件
	 */
	public void setSelfFeeRatioCondition(Condition<BigDecimal> selfFeeRatioCondition) {
		this.selfFeeRatioCondition = selfFeeRatioCondition;
	}

	/**
	 * 构造并返回费率设置描述查询条件
	 * 
	 * @return descriptionCondition 费率设置描述查询条件
	 */
	public Condition<String> description() {
		this.descriptionCondition = new Condition<>();
		return this.descriptionCondition;
	}
	
	/**
	 * 获取费率设置描述查询条件
	 * 
	 * @return descriptionCondition 费率设置描述查询条件
	 */
	public Condition<String> getDescriptionCondition() {
		return descriptionCondition;
	}

	/**
	 * 设置费率设置描述查询条件
	 * 
	 * @param descriptionCondition 费率设置描述查询条件
	 */
	public void setDescriptionCondition(Condition<String> descriptionCondition) {
		this.descriptionCondition = descriptionCondition;
	}

	/**
	 * 构造并返回停车场ID查询条件
	 * 
	 * @return parkIdCondition 停车场ID查询条件
	 */
	public Condition<String> parkId() {
		this.parkIdCondition = new Condition<>();
		return this.parkIdCondition;
	}
	
	/**
	 * 获取停车场ID查询条件
	 * 
	 * @return parkIdCondition 停车场ID查询条件
	 */
	public Condition<String> getParkIdCondition() {
		return parkIdCondition;
	}

	/**
	 * 设置停车场ID查询条件
	 * 
	 * @param parkIdCondition 停车场ID查询条件
	 */
	public void setParkIdCondition(Condition<String> parkIdCondition) {
		this.parkIdCondition = parkIdCondition;
	}

	/**
	 * 构造并返回统计停车免费数量查询条件
	 * 
	 * @return statisticsFreeNumCondition 统计停车免费数量查询条件
	 */
	public Condition<Integer> statisticsFreeNum() {
		this.statisticsFreeNumCondition = new Condition<>();
		return this.statisticsFreeNumCondition;
	}
	
	/**
	 * 获取统计停车免费数量查询条件
	 * 
	 * @return statisticsFreeNumCondition 统计停车免费数量查询条件
	 */
	public Condition<Integer> getStatisticsFreeNumCondition() {
		return statisticsFreeNumCondition;
	}

	/**
	 * 设置统计停车免费数量查询条件
	 * 
	 * @param statisticsFreeNumCondition 统计停车免费数量查询条件
	 */
	public void setStatisticsFreeNumCondition(Condition<Integer> statisticsFreeNumCondition) {
		this.statisticsFreeNumCondition = statisticsFreeNumCondition;
	}

	/**
	 * 构造并返回是否统计停车，1表示统计,0表示不统计查询条件
	 * 
	 * @return statisticsCondition 是否统计停车，1表示统计,0表示不统计查询条件
	 */
	public Condition<Boolean> statistics() {
		this.statisticsCondition = new Condition<>();
		return this.statisticsCondition;
	}
	
	/**
	 * 获取是否统计停车，1表示统计,0表示不统计查询条件
	 * 
	 * @return statisticsCondition 是否统计停车，1表示统计,0表示不统计查询条件
	 */
	public Condition<Boolean> getStatisticsCondition() {
		return statisticsCondition;
	}

	/**
	 * 设置是否统计停车，1表示统计,0表示不统计查询条件
	 * 
	 * @param statisticsCondition 是否统计停车，1表示统计,0表示不统计查询条件
	 */
	public void setStatisticsCondition(Condition<Boolean> statisticsCondition) {
		this.statisticsCondition = statisticsCondition;
	}

	/**
	 * 构造并返回创建人ID查询条件
	 * 
	 * @return createdByCondition 创建人ID查询条件
	 */
	public Condition<String> createdBy() {
		this.createdByCondition = new Condition<>();
		return this.createdByCondition;
	}
	
	/**
	 * 获取创建人ID查询条件
	 * 
	 * @return createdByCondition 创建人ID查询条件
	 */
	public Condition<String> getCreatedByCondition() {
		return createdByCondition;
	}

	/**
	 * 设置创建人ID查询条件
	 * 
	 * @param createdByCondition 创建人ID查询条件
	 */
	public void setCreatedByCondition(Condition<String> createdByCondition) {
		this.createdByCondition = createdByCondition;
	}

	/**
	 * 构造并返回创建时间查询条件
	 * 
	 * @return createdTimeCondition 创建时间查询条件
	 */
	public Condition<LocalDateTime> createdTime() {
		this.createdTimeCondition = new Condition<>();
		return this.createdTimeCondition;
	}
	
	/**
	 * 获取创建时间查询条件
	 * 
	 * @return createdTimeCondition 创建时间查询条件
	 */
	public Condition<LocalDateTime> getCreatedTimeCondition() {
		return createdTimeCondition;
	}

	/**
	 * 设置创建时间查询条件
	 * 
	 * @param createdTimeCondition 创建时间查询条件
	 */
	public void setCreatedTimeCondition(Condition<LocalDateTime> createdTimeCondition) {
		this.createdTimeCondition = createdTimeCondition;
	}

	/**
	 * 构造并返回更新人ID查询条件
	 * 
	 * @return modifiedByCondition 更新人ID查询条件
	 */
	public Condition<String> modifiedBy() {
		this.modifiedByCondition = new Condition<>();
		return this.modifiedByCondition;
	}
	
	/**
	 * 获取更新人ID查询条件
	 * 
	 * @return modifiedByCondition 更新人ID查询条件
	 */
	public Condition<String> getModifiedByCondition() {
		return modifiedByCondition;
	}

	/**
	 * 设置更新人ID查询条件
	 * 
	 * @param modifiedByCondition 更新人ID查询条件
	 */
	public void setModifiedByCondition(Condition<String> modifiedByCondition) {
		this.modifiedByCondition = modifiedByCondition;
	}

	/**
	 * 构造并返回更新时间查询条件
	 * 
	 * @return modifiedTimeCondition 更新时间查询条件
	 */
	public Condition<LocalDateTime> modifiedTime() {
		this.modifiedTimeCondition = new Condition<>();
		return this.modifiedTimeCondition;
	}
	
	/**
	 * 获取更新时间查询条件
	 * 
	 * @return modifiedTimeCondition 更新时间查询条件
	 */
	public Condition<LocalDateTime> getModifiedTimeCondition() {
		return modifiedTimeCondition;
	}

	/**
	 * 设置更新时间查询条件
	 * 
	 * @param modifiedTimeCondition 更新时间查询条件
	 */
	public void setModifiedTimeCondition(Condition<LocalDateTime> modifiedTimeCondition) {
		this.modifiedTimeCondition = modifiedTimeCondition;
	}

	/**
	 * 构造并返回[枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 * 
	 * @return typeCondition [枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 */
	public Condition<MerchantType> type() {
		this.typeCondition = new Condition<>();
		return this.typeCondition;
	}
	
	/**
	 * 获取[枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 * 
	 * @return typeCondition [枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 */
	public Condition<MerchantType> getTypeCondition() {
		return typeCondition;
	}

	/**
	 * 设置[枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 * 
	 * @param typeCondition [枚举]商户类型：0-普通商户-COMMON、1-停车场-PARK查询条件
	 */
	public void setTypeCondition(Condition<MerchantType> typeCondition) {
		this.typeCondition = typeCondition;
	}

	/**
	 * 构造并返回[枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 * 
	 * @return statusCondition [枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 */
	public Condition<MerchantStatus> status() {
		this.statusCondition = new Condition<>();
		return this.statusCondition;
	}
	
	/**
	 * 获取[枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 * 
	 * @return statusCondition [枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 */
	public Condition<MerchantStatus> getStatusCondition() {
		return statusCondition;
	}

	/**
	 * 设置[枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 * 
	 * @param statusCondition [枚举]商户状态：0-正常-NORMAL、1-打烊-CLOSED查询条件
	 */
	public void setStatusCondition(Condition<MerchantStatus> statusCondition) {
		this.statusCondition = statusCondition;
	}

	/**
	 * 构造并返回逻辑删除，1表示已删除,0表示未删除查询条件
	 * 
	 * @return delCondition 逻辑删除，1表示已删除,0表示未删除查询条件
	 */
	public Condition<Boolean> del() {
		this.delCondition = new Condition<>();
		return this.delCondition;
	}
	
	/**
	 * 获取逻辑删除，1表示已删除,0表示未删除查询条件
	 * 
	 * @return delCondition 逻辑删除，1表示已删除,0表示未删除查询条件
	 */
	public Condition<Boolean> getDelCondition() {
		return delCondition;
	}

	/**
	 * 设置逻辑删除，1表示已删除,0表示未删除查询条件
	 * 
	 * @param delCondition 逻辑删除，1表示已删除,0表示未删除查询条件
	 */
	public void setDelCondition(Condition<Boolean> delCondition) {
		this.delCondition = delCondition;
	}

	/**
	 * 构造并返回删除人ID查询条件
	 * 
	 * @return delByCondition 删除人ID查询条件
	 */
	public Condition<String> delBy() {
		this.delByCondition = new Condition<>();
		return this.delByCondition;
	}
	
	/**
	 * 获取删除人ID查询条件
	 * 
	 * @return delByCondition 删除人ID查询条件
	 */
	public Condition<String> getDelByCondition() {
		return delByCondition;
	}

	/**
	 * 设置删除人ID查询条件
	 * 
	 * @param delByCondition 删除人ID查询条件
	 */
	public void setDelByCondition(Condition<String> delByCondition) {
		this.delByCondition = delByCondition;
	}

	/**
	 * 构造并返回删除时间查询条件
	 * 
	 * @return delTimeCondition 删除时间查询条件
	 */
	public Condition<LocalDateTime> delTime() {
		this.delTimeCondition = new Condition<>();
		return this.delTimeCondition;
	}
	
	/**
	 * 获取删除时间查询条件
	 * 
	 * @return delTimeCondition 删除时间查询条件
	 */
	public Condition<LocalDateTime> getDelTimeCondition() {
		return delTimeCondition;
	}

	/**
	 * 设置删除时间查询条件
	 * 
	 * @param delTimeCondition 删除时间查询条件
	 */
	public void setDelTimeCondition(Condition<LocalDateTime> delTimeCondition) {
		this.delTimeCondition = delTimeCondition;
	}

}
